home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 46 / Amiga Format CD46 (1999-10-20)(Future Publishing)(GB)[!][issue 1999-12].iso / -in_the_mag- / reader_requests / scilab / demos / icse / icsegen.sci < prev    next >
Text File  |  1999-09-16  |  1KB  |  37 lines

  1. //[co,u,g,itv,dtv]=icsegen(u,simu,nap,imp,ech,cof)
  2. //Calcul du controle optimal avec mise a l'echelle du controle et 
  3. //ponderation des observations
  4. //Syntaxe
  5. //[co,u,g,itv,dtv]=icsegen(u,simu,nap,imp,ech,cof)
  6. //
  7. //variables d'entree :
  8. //u(nu)     : parametres initiaux
  9. //simu      : chaine de caracteres donnant le nom du sous programme
  10. //            decrivant le probleme (second menbre, critere et etat
  11. //            initial)
  12. //nap       : nombre maximum d' appels du simulateur
  13. //imp       : valeur de debug pendant l'optimisation
  14. //ech(1,nu) : coeff de mise a l'echelle du controle
  15. //cof(1,ntob*nob) : coeff de ponderation des observations
  16. //variables de sortie :
  17. //co        : cout final
  18. //u(nu)     : parametres finaux
  19. //g(nu)     : gradient final
  20. //itv(nitv) : tableau de travail (entiers fortran)
  21. //dtv(ndtv) : tableau de travail (double precision fortran)
  22. //Utiliser les macros icot et icob pour extraire l'etat
  23. //!
  24.  
  25. if nu<large then alg='qn' ; else alg='gc' ; end;
  26. itv=itu;
  27. itv(nitv)=0;
  28. dtv=[dtu,y0,tob,matrix(obs,1,ny*nob),don,ech,cof,b,fy1,fu1];
  29. dtv(ndtv)=0;
  30. debug(imp);
  31. [co,u,g,itv,dtv]=optim(simu,'b',binf,bsup,u, alg, df0, 'ar',nap,...
  32.                        'ti',itv,'td',dtv,'si','sd')
  33. debug(0);
  34. //end
  35.  
  36.  
  37.